package br.com.medvagas.negocio.facade;

import java.util.List;

import br.com.medvagas.comum.entidade.Especialidade;
import br.com.medvagas.comum.entidade.Profissao;
import br.com.medvagas.comum.entidade.UsuarioProfissional;
import br.com.medvagas.comum.entidade.Vaga;
import br.com.medvagas.comum.entidade.vo.VOConsultaVagaEmpresa;
import br.com.medvagas.comum.util.ChaveValor;

public interface ICadastrarVaga {

	String NOME = "cadastrarVaga";
	
	Vaga cadastrar(Vaga vaga);
	List<UsuarioProfissional> consultarProfissionalVaga(Integer idVaga);
	
	List<Profissao> consultarProfissao();
	List<Especialidade> consultarEspecialidade(Integer idProfissao);
	List<ChaveValor> consultarEmpresa(Integer idUsuarioEmpresa);
	
	List<VOConsultaVagaEmpresa> consultarVaga(Integer idUsuarioEmpresa, Boolean ativa);
	void cancelar(Integer idVaga);
	void excluir(Integer idVaga);
	Vaga consultarVagaPorId(Integer idVaga);
	void alterar(Vaga vaga);
	List<UsuarioProfissional> consultarCandidatosVaga(Integer idVaga, Integer idUsuarioEmpresa);
	List<UsuarioProfissional> consultarCandidatosVaga(Integer idVaga);
}